package com.threeox.commonlibrary.inter;

import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

/**
 *
 * @ClassName: ILifecycleListener
 *
 * @Description: TODO(生命周期的监听)
 *
 * @author 赵屈犇
 *
 * @date 创建时间: 2017/9/10 14:13
 *
 * @version 1.0
 *
 */
public interface ILifecycleListener {

    /*==============Activity和Fragment的生命周期==================*/
    /**
     * Activity与Fragment 的onCreate 回调
     *
     * @param savedInstanceState
     */
    void onCreate(Bundle savedInstanceState);

    /**
     * onStart 回调
     */
    boolean onStart();

    /**
     * onRestart 回调
     */
    boolean onRestart();

    /**
     * onResume 回调
     */
    boolean onResume();

    /**
     * onStop 回调
     */
    boolean onStop();

    /**
     * onPause 回调
     */
    boolean onPause();

    /**
     * onDestroy 回调
     */
    boolean onDestroy();

    /**
     * 用户按下后退键时调用
     */
    boolean onBackPressed();

    /**
     * 当Fragment与Activity发生关联时调用
     *
     * @param activity
     */
    void onAttach(Activity activity);

    /**
     * 创建该Fragment的视图
     *
     * @param inflater
     * @param container
     * @param savedInstanceState
     * @return
     */
    View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState);

    /**
     * 当Activity的onCreate方法返回时调用
     * @param savedInstanceState
     */
    void onActivityCreated(Bundle savedInstanceState);

    /**
     * 与onCreateView想对应，当该Fragment的视图被移除时调用
     */
    boolean onDestroyView();

    /**
     * 与onAttach相对应，当Fragment与Activity关联被取消时调用
     */
    boolean onDetach();

    /*==============Activity和Fragment的生命周期==================*/

}
